package com.expert.miniapp.dao;

import lombok.Data;
import java.time.LocalDateTime;

/**
 * User实体类 - 用户表
 * 映射数据库user表的所有字段
 *
 * @author System
 * @since 2025-01-14
 */
@Data
public class User {

    /**
     * 用户ID（主键，UUID格式）
     */
    private String userId;

    /**
     * 用户名（唯一，可外显）
     * 格式：user_YYYY_MM_DD_XXX
     */
    private String username;

    /**
     * 昵称
     */
    private String nickname;

    /**
     * 头像URL
     */
    private String avatarUrl;

    /**
     * 微信OpenID（唯一）
     */
    private String wechatOpenid;

    /**
     * 手机号
     */
    private String phone;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 组织名称
     */
    private String orgName;

    /**
     * 组织规模
     */
    private String orgSize;

    /**
     * 地区城市
     */
    private String regionCity;

    /**
     * 组织角色
     */
    private String orgRole;

    /**
     * 状态（默认：active）
     */
    private String status;

    /**
     * 创建时间
     */
    private LocalDateTime createdAt;

    /**
     * 最后登录时间
     */
    private LocalDateTime lastLoginAt;

    /**
     * 是否已删除（0-未删除，1-已删除）
     */
    private Boolean isDeleted;

    /**
     * 删除时间
     */
    private LocalDateTime deletedAt;
}
